1 using System;
2 using System.Collections.Generic;
3 using System.ComponentModel;
4 using System.Data;
5 using System.Drawing;
6 using System.Linq;
7 using System.Text;
8 using System.Threading.Tasks;
9 using System.Windows.Forms;
10
11 namespace SoftQuanLyNhaHang.Views
12 {
13 public partial class frmNhapKho : Form
14 {
15 public frmNhapKho()
16 {
17 InitializeComponent();
18 //grAn.Visible = false;
19 }
20
21 private string _getMaSanPham;
22 private int _getIdKhachHang;
23
24 public frmNhapKho(int idKhachHang, string maSanPham) : this()
25 {
26 _getMaSanPham = maSanPham;
27 _getIdKhachHang = idKhachHang;
28 }
29
30
31 //nhap kho
32
33 //float _soLuong = 0;
34 //float _soLuongDaBan = 0;
35 int _donViTinhId = 0;
36 string _tenDonViTinh = "";
37 double _giaBanLe = 0;
38 //string _ngaySanXuat = "";
39 // string _hanSuDung = "";
40 //string _ghiChu = "";
41 double _thanhTien = 0;
42 double _chietKhauPhanTram = 0;
43 double _thue = 0;
44 int _trangthai_BanHang = 0;
45
46 //bang kho
47 int _IdKho = 0;
48 string _maSanPham = "";
49 string _MaVietTat = "";
50 string _tenSanPham = "";
51
52
53
54 int _NhomSanPhamId = 0;
55 //int _DanhMucId = 0;
56 int _NhaCungCapId = 0;
57 string _AnhDaiDien = string.Empty;
58 int _HanMucDatHang = 0;
59 string _HanSuDung = string.Empty;
60 string _NgaySanXuat = string.Empty;
61 DateTime _NgayHetHan = DateTime.Now;
62 string _MoTa = string.Empty;
63 double _GiaNhap = 0;
64 float _SoLuong = 0;
65 float _SoLuongDaBan = 0;
66
67 double _ChietKhau_PhanTram = 0;
68 double _TiLeLoiNhuan = 0;
69 //double _GiaBanLe = 0;
70 double _GiaBanBuon = 0;
71 double _GiaKhuyenMai = 0;
72 DateTime _NgayBatDauGiamGia = DateTime.Now;
73 DateTime _NgayKetThuc = DateTime.Now;
74 string _TrangThai_K = "NhapHang";
75 double _TienThue = 0;
76 double _TienChietKhau = 0;
77
78 DateTime _ngayMuaHang = DateTime.Now;
79 float _ThueBanHang = 0;
80 float _ChietKhauPTBanHang = 0;
81
82
83 private void HienThiDonViTinh_ComboBox()
84 {
85 Dictionary<string, string> comboSource = new Dictionary<string, string>();
86 comboSource.Add("0", "-- Chọn đơn vị tính --");
87 DataTable dtdvt = new DataTable();
88 dtdvt = Controllers.DonViTinhCtrl.FillDataSetDonViTinh_GetDanhSach().Tables[0];// Models.NhapKhoMod.FillDataSet_getTenDonViTinh().Tables[0];
89
90 if (dtdvt.Rows.Count > 0)
91 {
92 foreach (DataRow item in dtdvt.Rows)
93 {
94 comboSource.Add(item["IdDonViTinh"].ToString(), item["TenDonViTinh"].ToString());
95 }
96
97 }
98 cmb_DonViTinh.DataSource = new BindingSource(comboSource, null);
99 cmb_DonViTinh.DisplayMember = "Value";
100 cmb_DonViTinh.ValueMember = "Key";
101 }
102
103 private void btnOk_Click(object sender, EventArgs e)
104 {
105 //Thêm thông tin sản phẩm vào bảng nhập kho
106 try
107 {
108 if (string.IsNullOrEmpty(txt_MaSanPham.Text.Trim()))
109 {
110 MessageBox.Show("Mã sản phẩm không được để trống");
111
112 txt_MaSanPham.Focus();
113
114 return;
115 }
116
117 _maSanPham = txt_MaSanPham.Text;
118 _MaVietTat = txt_MaSanPham.Text.Trim();
119
120 }
121 catch { }
122
123 try
124 {
125 if (string.IsNullOrEmpty(txt_TenSanPham.Text.Trim()))
126 {
127 MessageBox.Show("Tên sản phẩm không được để trống");
128
129 txt_TenSanPham.Focus();
130
131 return;
132 }
133
134 _tenSanPham = txt_TenSanPham.Text;
135
136 }
137 catch { }
138
139 try
140 {
141 _SoLuong =(float)CauHinhHeThong.Format_SoDeTinhToan(txtSoLuong.Text.Trim(), true);
142 _SoLuongDaBan = _SoLuong;
143 }
144 catch { }
145
146 try
147 {
148 _donViTinhId = Int32.Parse(cmb_DonViTinh.SelectedValue.ToString());
149
150 if (_donViTinhId == 0)
151 {
152 MessageBox.Show("Bạn chưa chọn đơn vị tính");
153 cmb_DonViTinh.Focus();
154 return;
155 }
156 }
157 catch { }
158
159 try
160 {
161 _tenDonViTinh = cmb_DonViTinh.GetItemText(cmb_DonViTinh.SelectedItem);
162 }
163 catch { }
164
165 try
166 {
167 if (string.IsNullOrEmpty(txt_GiaNhap.Text))
168 {
169 MessageBox.Show("Giá sản phẩm không được để trống");
170
171 txt_GiaNhap.Focus();
172 return;
173 }
174
175 if (txt_GiaNhap.Text.Trim().Length > 12)
176 {
177 txt_GiaNhap.Text = string.Empty;
178
179 MessageBox.Show("Giá sản phẩm không được để trống");
180
181 txt_GiaNhap.Focus();
182 return;
183 }
184 else
185 {
186 _giaBanLe = CauHinhHeThong.Format_SoDeTinhToan(txt_GiaNhap.Text.Trim(), true);
187 }
188
189
190
191 }
192 catch { }
193
194 try
195 {
196 _HanSuDung = txtHanSuDung.Text;
197 }
198 catch { }
199
200 try
201 {
202 _NgaySanXuat = txtNgaySanXuat.Text;
203 }
204 catch { }
205
206 try
207 {
208 _MoTa = txtGhiChu.Text;
209 }
210 catch { }
211
212 try
213 {
214 //_thanhTien = _giaBan;
215 }
216 catch
217 {
218
219 }
220
221 //int j = 0;
222 //Thêm mới vào bảng nhập kho
223 //i = Controllers.NhapKhoCtrl.InsertNhapKho(_idNhapKho, _maSanPham, _tenSanPham, _soLuong, _donViTinhId, _tenDonViTinh, _giaBan, _ngaySanXuat, _hanSuDung, _hoVaTen, _soDienThoai, _diaChi, _ghiChu, _thanhTien, _giaBanLe, _giaBanBuon, _ngayMuaHang);
224 //try
225 //{
226 //_thanhTien = 0;// _soLuong* _giaBan;
227
228 //}
229 //catch { }
230
231
232
233
234 //Them vao bang kho
235 int _nhapKhoId = Controllers.KhoCtrl.InsertKho(_IdKho, _maSanPham, _tenSanPham, _NhomSanPhamId, _donViTinhId,0, _NhaCungCapId,0, _AnhDaiDien, _HanMucDatHang, _HanSuDung, _NgaySanXuat, _NgayHetHan, _MoTa, _GiaNhap, _SoLuong,0, _ChietKhau_PhanTram, _TiLeLoiNhuan, _giaBanLe, _GiaBanBuon, _GiaKhuyenMai, _NgayBatDauGiamGia, _NgayKetThuc, _TrangThai_K, _ngayMuaHang, "PhanTram", _TienThue, _TienChietKhau, _MaVietTat, _ThueBanHang , _ChietKhauPTBanHang , _SoLuongDaBan);
236
237 //Thêm các sản phẩm đang bán vào bảng bán hàng
238 int banhangid = Controllers.BanHangCtrl.InsertBanHang(0, _maSanPham, _tenSanPham, _giaBanLe, _thanhTien, 0, _tenDonViTinh, _donViTinhId, _getIdKhachHang, _ngayMuaHang, _trangthai_BanHang, _nhapKhoId, _chietKhauPhanTram, _thue, _SoLuongDaBan);
239
240 //lbl_idBanHang.Text = j.ToString();
241
242 this.Close();
243 /*
244 if (i > 0)
245 {
246 this.Close();
247 }
248 else
249 {
250 MessageBox.Show("Thêm mới không thành công");
251 }
252 */
253 }
254
255 private void frmNhapKho_Load(object sender, EventArgs e)
256 {
257 this.HienThiDonViTinh_ComboBox();
258
259 txt_MaSanPham.Enabled = false;
260
261 txt_MaSanPham.Text = _getMaSanPham;
262
263 //hien thi thong tin san pham
264 DataTable dtKho = new DataTable();
265 dtKho = Controllers.KhoCtrl.FillDataSet_getKho_ByMaVietTat(_getMaSanPham, 0, _getMaSanPham).Tables[0];
266 if (dtKho.Rows.Count > 0)
267 {
268 txt_TenSanPham.Text = dtKho.Rows[0]["TenSanPham"].ToString();
269 double giabanle = 0;
270 double thuebanhang = 0;
271 double chietkhaubanhang = 0;
272 double giatien = 0;
273
274 giabanle = CauHinhHeThong.Format_SoDeTinhToan(dtKho.Rows[0]["GiaBanLe"].ToString(), false);
275 chietkhaubanhang = CauHinhHeThong.Format_SoDeTinhToan(dtKho.Rows[0]["ChietKhauPTBanHang"].ToString(), false);
276 thuebanhang = CauHinhHeThong.Format_SoDeTinhToan(dtKho.Rows[0]["ThueBanHang"].ToString(), false);
277
278 giatien = giabanle - giabanle * chietkhaubanhang / 100 + giabanle * thuebanhang / 100;
279
280 txt_GiaNhap.Text = CauHinhHeThong.Format_SoDeHienThi(giabanle, true);
281 cmb_DonViTinh.SelectedValue = dtKho.Rows[0]["DonViTinhId"].ToString();
282 txtHanSuDung.Text = dtKho.Rows[0]["HanSuDung"].ToString();
283 txtNgaySanXuat.Text = dtKho.Rows[0]["NgaySanXuat"].ToString();
284 }
285 else
286 {
287 DataTable dtTtsp = new DataTable();
288
289 dtTtsp = Controllers.ThongTinSanPhamCtrl.FillDataSet_ThongTinSanPhamByMaSanPham(_getMaSanPham).Tables[0];
290
291 if (dtTtsp.Rows.Count > 0)
292 {
293 //Hiển thị ra form
294 txt_TenSanPham.Text = dtTtsp.Rows[0]["TenSanPham"].ToString();
295 //Hiển thị đơn vị tính
296 cmb_DonViTinh.SelectedValue = dtTtsp.Rows[0]["DonViTinhId"].ToString();
297
298 txt_GiaNhap.Text = dtTtsp.Rows[0]["TenNhaCungCap"].ToString();
299 }
300 else
301 {
302 txt_TenSanPham.Text = "";
303 txt_GiaNhap.Text = "";
304 cmb_DonViTinh.SelectedValue = "0";
305
306 }
307
308 txtHanSuDung.Text = "";
309 txtNgaySanXuat.Text = "";
310
311 }
312
313 if (string.IsNullOrEmpty(txt_TenSanPham.Text.Trim()))
314 {
315 this.ActiveControl = txt_TenSanPham;
316 }
317 else
318 {
319 this.ActiveControl = txt_GiaNhap;
320 }
321
322 }
323
324 private void txtGiaNhap_TextChanged(object sender, EventArgs e)
325 {
326 try
327 {
328 string value = txt_GiaNhap.Text.Replace(CauHinhHeThong.PHAN_CACH_HANG_NGHIN, "");
329 ulong ul = 0;
330
331 if (ulong.TryParse(value, out ul))
332 {
333 txt_GiaNhap.TextChanged -= txtGiaNhap_TextChanged;
334
335 if (txt_GiaNhap.Text.StartsWith("0"))
336 {
337 txt_GiaNhap.Text = ul.ToString();
338 }
339 else
340 {
341 txt_GiaNhap.Text = CauHinhHeThong.DoFormat_NhapSoTrongText(value);
342 }
343
344 txt_GiaNhap.SelectionStart = txt_GiaNhap.Text.Length;
345 txt_GiaNhap.TextChanged += txtGiaNhap_TextChanged;
346 }
347 else
348 {
349 if (txt_GiaNhap.Text.StartsWith(CauHinhHeThong.DAU_PHAY))
350 {
351 txt_GiaNhap.TextChanged -= txtGiaNhap_TextChanged;
352 txt_GiaNhap.Text = "0" + txt_GiaNhap.Text;
353 txt_GiaNhap.SelectionStart = txt_GiaNhap.Text.Length;
354 txt_GiaNhap.TextChanged += txtGiaNhap_TextChanged;
355 }
356 }
357
358 }
359 catch
360 {
361 }
362 }
363
364 private void txtGiaNhap_KeyPress(object sender, KeyPressEventArgs e)
365 {
366 //chỉ nhập số
367 CauHinhHeThong.NhapSoTrongTextBox(sender, e);
368 }
369
370 private void txtSoLuong_TextChanged(object sender, EventArgs e)
371 {
372 try
373 {
374 string value = txtSoLuong.Text.Replace(CauHinhHeThong.PHAN_CACH_HANG_NGHIN, "");
375 ulong ul = 0;
376
377 if (ulong.TryParse(value, out ul))
378 {
379 txtSoLuong.TextChanged -= txtSoLuong_TextChanged;
380
381 if (txtSoLuong.Text.StartsWith("0"))
382 {
383 txtSoLuong.Text = ul.ToString();
384 }
385 else
386 {
387 txtSoLuong.Text = CauHinhHeThong.DoFormat_NhapSoTrongText(value);
388 }
389
390
391 txtSoLuong.SelectionStart = txtSoLuong.Text.Length;
392 txtSoLuong.TextChanged += txtSoLuong_TextChanged;
393 }
394 else
395 {
396 if (txtSoLuong.Text.StartsWith(CauHinhHeThong.DAU_PHAY))
397 {
398 txtSoLuong.TextChanged -= txtSoLuong_TextChanged;
399 txtSoLuong.Text = "0" + txtSoLuong.Text;
400 txtSoLuong.SelectionStart = txtSoLuong.Text.Length;
401 txtSoLuong.TextChanged += txtSoLuong_TextChanged;
402 }
403 }
404
405 }
406 catch
407 {
408 }
409 }
410
411 private void txtSoLuong_KeyPress(object sender, KeyPressEventArgs e)
412 {
413 //chỉ nhập số
414 CauHinhHeThong.NhapSoTrongTextBox(sender, e);
415 }
416
417 private void btnHuy_Click(object sender, EventArgs e)
418 {
419 this.Close();
420 }
421
422 private void txt_TenSanPham_KeyDown(object sender, KeyEventArgs e)
423 {
424 if (e.KeyCode == Keys.Escape)
425 {
426 this.Close();
427
428 return;
429 }
430 }
431
432 private void txt_GiaNhap_KeyDown(object sender, KeyEventArgs e)
433 {
434 if (e.KeyCode == Keys.Escape)
435 {
436 this.Close();
437
438 return;
439 }
440
441 if (e.KeyCode == Keys.Enter)
442 {
443 this.btnOk_Click(sender, e);
444 }
445 }
446 }
447 }